package models

import (
	"time"
)

// MaOrderRefund [...]
type MaOrderRefund struct {
	ID                  string    `gorm:"primaryKey;column:id;type:bigint;not null"  json:"id" json_old:"ID"`
	SalesID             string    `gorm:"primaryKey;index:SalesID;column:sales_id;type:varchar(50);not null"  json:"sales_id" json_old:"SalesID"`
	RobotName           string    `gorm:"column:robot_name;type:varchar(255);not null;default:'';comment:机器名称" json:"robot_name" json_old:"RobotName"`
	PaymentAmount       float64   `gorm:"column:payment_amount;type:decimal(10,2) unsigned;not null"  json:"payment_amount" json_old:"PaymentAmount"`
	RefundPaymentAmount float64   `gorm:"column:refund_payment_amount;type:decimal(10,2) unsigned zerofill;not null;default:00000000.00"  json:"refund_payment_amount" json_old:"ReFundPaymentAmount"`
	OutTradeNo          string    `gorm:"primaryKey;index:OutTradeNo;column:out_trade_no;type:varchar(50);not null"  json:"out_trade_no" json_old:"OutTradeNo"`
	OutReFundNo         string    `gorm:"primaryKey;column:out_re_fund_no;type:varchar(50);not null"  json:"out_re_fund_no" json_old:"OutReFundNo"`
	AddTime             time.Time `gorm:"index:AddTime;column:add_time;type:datetime;default:null"  json:"add_time" json_old:"AddTime"`
	AliPayResult        string    `gorm:"column:ali_pay_result;type:text;default:null"  json:"ali_pay_result" json_old:"AliPayResult"`
	WeChatResult        string    `gorm:"column:we_chat_result;type:text;default:null"  json:"we_chat_result" json_old:"WeChatResult"`
	AliPayQueryResult   string    `gorm:"column:ali_pay_query_result;type:text;default:null"  json:"ali_pay_query_result" json_old:"AliPayQueryResult"`
	WeChatQueryResult   string    `gorm:"column:we_chat_query_result;type:text;default:null"  json:"we_chat_query_result" json_old:"WeChatQueryResult"`
	Type                int       `gorm:"primaryKey;column:type;type:int;not null;comment:0-受理失败 1-已受理 2-已退款"  json:"type" json_old:"Type"`
	PayStatus           int       `gorm:"column:pay_status;type:int;default:null;comment:0-微信,1-支付宝,2-支付宝人脸,3-刷卡"  json:"pay_status" json_old:"PayStatus"`
	Reason              string    `gorm:"column:reason;type:varchar(30);default:null;comment:0-网络异常订单支付未出货 1-货品出错 2-商品质量问题 3-其他"  json:"reason" json_old:"Reason"`
	Remarks             string    `gorm:"column:remarks;type:text;default:null"  json:"remarks" json_old:"Remarks"`
	RefundUserID        string    `gorm:"column:refund_user_id;type:varchar(30);default:null"  json:"refund_user_id" json_old:"RefundUserID"`
	CreatedAt           int64     `json:"created_at" gorm:"column:created_at;autoCreateTime;type:int;size:64;index:created_at;comment:创建时间"`
}

// TableName get sql table name.获取数据库表名
func (m MaOrderRefund) TableName() string {
	return "ma_order_refund"
}

// 模式自动注册
func init() {
	Models = append(Models, &MaOrderRefund{})
}
